Specify the tissue of interest, run the boilerplate code which sets up the functions and environment, load the tissue object.
tissue_of_interest = "Heart"
library(here)
source(here("00_data_ingest", "02_tissue_analysis_rmd", "boilerplate.R"))
tiss=load_tissue_facs(tissue_of_interest)
Visualize top genes in principal components
Later on (in FindClusters and TSNE) you will pick a number of principal components to use. This has the effect of keeping the major directions of variation in the data and, ideally, supressing noise. There is no correct answer to the number to use, but a decent rule of thumb is to go until the plot plateaus.
PCElbowPlot(object = tiss)
Choose the number of principal components to use.
# Set number of principal components.
n.pcs = 10
The clustering is performed based on a nearest neighbors graph. Cells that have similar expression will be joined together. The Louvain algorithm looks for groups of cells with high modularity–more connections within the group than between groups. The resolution parameter determines the scale…higher resolution will give more clusters, lower resolution will give fewer.
For the top-level clustering, aim to under-cluster instead of over-cluster. It will be easy to subset groups and further analyze them below.
# Set resolution
res.used <- 0.5
tiss <- FindClusters(object = tiss, reduction.type = "pca", dims.use = 1:n.pcs,
resolution = res.used, print.output = 0, save.SNN = TRUE)
To visualize
# If cells are too spread out, you can raise the perplexity. If you have few cells, try a lower perplexity (but never less than 10).
tiss <- RunTSNE(object = tiss, dims.use = 1:n.pcs, seed.use = 10, perplexity=30)
# note that you can set do.label=T to help label individual clusters
TSNEPlot(object = tiss, do.label = T)
Check expression of genes of interset.
Dotplots let you see the intensity of exppression and the fraction of cells expressing for each of your genes of interest.
How big are the clusters?
table(tiss@ident)
0 1 2 3 4 5 6 7 8 9 10 11
944 706 565 469 426 365 247 220 165 133 97 28
Which markers identify a specific cluster?
clust.markers <- FindMarkers(object = tiss, ident.1 = 0, only.pos = TRUE, min.pct = 0.25, thresh.use = 0.25)
| | 0 % ~calculating
|+ | 1 % ~01m 42s
|++ | 2 % ~01m 40s
|++ | 3 % ~01m 40s
|+++ | 4 % ~01m 38s
|+++ | 5 % ~01m 37s
|++++ | 6 % ~01m 36s
|++++ | 7 % ~01m 36s
|+++++ | 8 % ~01m 34s
|+++++ | 9 % ~01m 33s
|++++++ | 10% ~01m 32s
|++++++ | 11% ~01m 32s
|+++++++ | 12% ~01m 31s
|+++++++ | 13% ~01m 30s
|++++++++ | 14% ~01m 29s
|++++++++ | 15% ~01m 28s
|+++++++++ | 16% ~01m 27s
|+++++++++ | 18% ~01m 26s
|++++++++++ | 19% ~01m 24s
|++++++++++ | 20% ~01m 23s
|+++++++++++ | 21% ~01m 22s
|+++++++++++ | 22% ~01m 21s
|++++++++++++ | 23% ~01m 20s
|++++++++++++ | 24% ~01m 19s
|+++++++++++++ | 25% ~01m 18s
|+++++++++++++ | 26% ~01m 17s
|++++++++++++++ | 27% ~01m 16s
|++++++++++++++ | 28% ~01m 15s
|+++++++++++++++ | 29% ~01m 14s
|+++++++++++++++ | 30% ~01m 12s
|++++++++++++++++ | 31% ~01m 11s
|++++++++++++++++ | 32% ~01m 10s
|+++++++++++++++++ | 33% ~01m 09s
|++++++++++++++++++ | 34% ~01m 08s
|++++++++++++++++++ | 35% ~01m 07s
|+++++++++++++++++++ | 36% ~01m 06s
|+++++++++++++++++++ | 37% ~01m 05s
|++++++++++++++++++++ | 38% ~01m 04s
|++++++++++++++++++++ | 39% ~01m 03s
|+++++++++++++++++++++ | 40% ~01m 02s
|+++++++++++++++++++++ | 41% ~01m 01s
|++++++++++++++++++++++ | 42% ~60s
|++++++++++++++++++++++ | 43% ~59s
|+++++++++++++++++++++++ | 44% ~58s
|+++++++++++++++++++++++ | 45% ~57s
|++++++++++++++++++++++++ | 46% ~55s
|++++++++++++++++++++++++ | 47% ~54s
|+++++++++++++++++++++++++ | 48% ~53s
|+++++++++++++++++++++++++ | 49% ~52s
|++++++++++++++++++++++++++ | 51% ~51s
|++++++++++++++++++++++++++ | 52% ~50s
|+++++++++++++++++++++++++++ | 53% ~49s
|+++++++++++++++++++++++++++ | 54% ~48s
|++++++++++++++++++++++++++++ | 55% ~47s
|++++++++++++++++++++++++++++ | 56% ~46s
|+++++++++++++++++++++++++++++ | 57% ~45s
|+++++++++++++++++++++++++++++ | 58% ~44s
|++++++++++++++++++++++++++++++ | 59% ~43s
|++++++++++++++++++++++++++++++ | 60% ~42s
|+++++++++++++++++++++++++++++++ | 61% ~41s
|+++++++++++++++++++++++++++++++ | 62% ~40s
|++++++++++++++++++++++++++++++++ | 63% ~38s
|++++++++++++++++++++++++++++++++ | 64% ~37s
|+++++++++++++++++++++++++++++++++ | 65% ~36s
|+++++++++++++++++++++++++++++++++ | 66% ~35s
|++++++++++++++++++++++++++++++++++ | 67% ~34s
|+++++++++++++++++++++++++++++++++++ | 68% ~33s
|+++++++++++++++++++++++++++++++++++ | 69% ~32s
|++++++++++++++++++++++++++++++++++++ | 70% ~31s
|++++++++++++++++++++++++++++++++++++ | 71% ~30s
|+++++++++++++++++++++++++++++++++++++ | 72% ~29s
|+++++++++++++++++++++++++++++++++++++ | 73% ~28s
|++++++++++++++++++++++++++++++++++++++ | 74% ~27s
|++++++++++++++++++++++++++++++++++++++ | 75% ~26s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~25s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~23s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~22s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~21s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~20s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~19s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~18s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~17s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~16s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~15s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~14s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~13s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~12s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~11s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~10s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~07s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~05s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 43s
print(x = head(x= clust.markers, n = 10))
You can also compute all markers for all clusters at once. This may take some time.
tiss.markers <- FindAllMarkers(object = tiss, only.pos = TRUE, min.pct = 0.25, thresh.use = 0.25)
| | 0 % ~calculating
|+ | 1 % ~01m 10s
|++ | 2 % ~01m 09s
|++ | 3 % ~01m 08s
|+++ | 4 % ~01m 07s
|+++ | 5 % ~01m 06s
|++++ | 6 % ~01m 05s
|++++ | 7 % ~01m 04s
|+++++ | 8 % ~01m 04s
|+++++ | 9 % ~01m 03s
|++++++ | 10% ~01m 02s
|++++++ | 11% ~01m 02s
|+++++++ | 12% ~01m 01s
|+++++++ | 14% ~01m 00s
|++++++++ | 15% ~59s
|++++++++ | 16% ~59s
|+++++++++ | 17% ~58s
|+++++++++ | 18% ~57s
|++++++++++ | 19% ~56s
|++++++++++ | 20% ~56s
|+++++++++++ | 21% ~55s
|+++++++++++ | 22% ~54s
|++++++++++++ | 23% ~54s
|++++++++++++ | 24% ~53s
|+++++++++++++ | 25% ~52s
|++++++++++++++ | 26% ~51s
|++++++++++++++ | 27% ~51s
|+++++++++++++++ | 28% ~50s
|+++++++++++++++ | 29% ~49s
|++++++++++++++++ | 30% ~49s
|++++++++++++++++ | 31% ~48s
|+++++++++++++++++ | 32% ~47s
|+++++++++++++++++ | 33% ~46s
|++++++++++++++++++ | 34% ~46s
|++++++++++++++++++ | 35% ~45s
|+++++++++++++++++++ | 36% ~44s
|+++++++++++++++++++ | 38% ~43s
|++++++++++++++++++++ | 39% ~43s
|++++++++++++++++++++ | 40% ~42s
|+++++++++++++++++++++ | 41% ~41s
|+++++++++++++++++++++ | 42% ~41s
|++++++++++++++++++++++ | 43% ~40s
|++++++++++++++++++++++ | 44% ~39s
|+++++++++++++++++++++++ | 45% ~38s
|+++++++++++++++++++++++ | 46% ~38s
|++++++++++++++++++++++++ | 47% ~37s
|++++++++++++++++++++++++ | 48% ~36s
|+++++++++++++++++++++++++ | 49% ~35s
|+++++++++++++++++++++++++ | 50% ~35s
|++++++++++++++++++++++++++ | 51% ~34s
|+++++++++++++++++++++++++++ | 52% ~33s
|+++++++++++++++++++++++++++ | 53% ~33s
|++++++++++++++++++++++++++++ | 54% ~32s
|++++++++++++++++++++++++++++ | 55% ~31s
|+++++++++++++++++++++++++++++ | 56% ~30s
|+++++++++++++++++++++++++++++ | 57% ~30s
|++++++++++++++++++++++++++++++ | 58% ~29s
|++++++++++++++++++++++++++++++ | 59% ~28s
|+++++++++++++++++++++++++++++++ | 60% ~28s
|+++++++++++++++++++++++++++++++ | 61% ~27s
|++++++++++++++++++++++++++++++++ | 62% ~26s
|++++++++++++++++++++++++++++++++ | 64% ~25s
|+++++++++++++++++++++++++++++++++ | 65% ~25s
|+++++++++++++++++++++++++++++++++ | 66% ~24s
|++++++++++++++++++++++++++++++++++ | 67% ~23s
|++++++++++++++++++++++++++++++++++ | 68% ~22s
|+++++++++++++++++++++++++++++++++++ | 69% ~22s
|+++++++++++++++++++++++++++++++++++ | 70% ~21s
|++++++++++++++++++++++++++++++++++++ | 71% ~20s
|++++++++++++++++++++++++++++++++++++ | 72% ~20s
|+++++++++++++++++++++++++++++++++++++ | 73% ~19s
|+++++++++++++++++++++++++++++++++++++ | 74% ~18s
|++++++++++++++++++++++++++++++++++++++ | 75% ~17s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~17s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~16s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~15s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~15s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~14s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~13s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~12s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~12s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~11s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~10s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~09s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~06s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~04s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~04s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 09s
| | 0 % ~calculating
|+ | 1 % ~02m 04s
|++ | 2 % ~02m 14s
|++ | 3 % ~02m 10s
|+++ | 4 % ~02m 06s
|+++ | 5 % ~02m 04s
|++++ | 6 % ~02m 02s
|++++ | 7 % ~01m 60s
|+++++ | 8 % ~02m 00s
|+++++ | 9 % ~01m 60s
|++++++ | 10% ~01m 58s
|++++++ | 11% ~01m 56s
|+++++++ | 12% ~01m 55s
|+++++++ | 13% ~01m 54s
|++++++++ | 14% ~01m 53s
|++++++++ | 15% ~01m 52s
|+++++++++ | 16% ~01m 51s
|+++++++++ | 18% ~01m 49s
|++++++++++ | 19% ~01m 48s
|++++++++++ | 20% ~01m 47s
|+++++++++++ | 21% ~01m 46s
|+++++++++++ | 22% ~01m 45s
|++++++++++++ | 23% ~01m 44s
|++++++++++++ | 24% ~01m 42s
|+++++++++++++ | 25% ~01m 41s
|+++++++++++++ | 26% ~01m 40s
|++++++++++++++ | 27% ~01m 39s
|++++++++++++++ | 28% ~01m 38s
|+++++++++++++++ | 29% ~01m 37s
|+++++++++++++++ | 30% ~01m 36s
|++++++++++++++++ | 31% ~01m 36s
|++++++++++++++++ | 32% ~01m 35s
|+++++++++++++++++ | 33% ~01m 33s
|++++++++++++++++++ | 34% ~01m 31s
|++++++++++++++++++ | 35% ~01m 30s
|+++++++++++++++++++ | 36% ~01m 28s
|+++++++++++++++++++ | 37% ~01m 26s
|++++++++++++++++++++ | 38% ~01m 25s
|++++++++++++++++++++ | 39% ~01m 23s
|+++++++++++++++++++++ | 40% ~01m 22s
|+++++++++++++++++++++ | 41% ~01m 20s
|++++++++++++++++++++++ | 42% ~01m 19s
|++++++++++++++++++++++ | 43% ~01m 18s
|+++++++++++++++++++++++ | 44% ~01m 16s
|+++++++++++++++++++++++ | 45% ~01m 15s
|++++++++++++++++++++++++ | 46% ~01m 13s
|++++++++++++++++++++++++ | 47% ~01m 12s
|+++++++++++++++++++++++++ | 48% ~01m 10s
|+++++++++++++++++++++++++ | 49% ~01m 09s
|++++++++++++++++++++++++++ | 51% ~01m 08s
|++++++++++++++++++++++++++ | 52% ~01m 06s
|+++++++++++++++++++++++++++ | 53% ~01m 05s
|+++++++++++++++++++++++++++ | 54% ~01m 03s
|++++++++++++++++++++++++++++ | 55% ~01m 02s
|++++++++++++++++++++++++++++ | 56% ~01m 01s
|+++++++++++++++++++++++++++++ | 57% ~59s
|+++++++++++++++++++++++++++++ | 58% ~58s
|++++++++++++++++++++++++++++++ | 59% ~56s
|++++++++++++++++++++++++++++++ | 60% ~55s
|+++++++++++++++++++++++++++++++ | 61% ~53s
|+++++++++++++++++++++++++++++++ | 62% ~52s
|++++++++++++++++++++++++++++++++ | 63% ~51s
|++++++++++++++++++++++++++++++++ | 64% ~49s
|+++++++++++++++++++++++++++++++++ | 65% ~48s
|+++++++++++++++++++++++++++++++++ | 66% ~46s
|++++++++++++++++++++++++++++++++++ | 67% ~45s
|+++++++++++++++++++++++++++++++++++ | 68% ~44s
|+++++++++++++++++++++++++++++++++++ | 69% ~42s
|++++++++++++++++++++++++++++++++++++ | 70% ~41s
|++++++++++++++++++++++++++++++++++++ | 71% ~39s
|+++++++++++++++++++++++++++++++++++++ | 72% ~38s
|+++++++++++++++++++++++++++++++++++++ | 73% ~37s
|++++++++++++++++++++++++++++++++++++++ | 74% ~35s
|++++++++++++++++++++++++++++++++++++++ | 75% ~34s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~32s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~31s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~30s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~28s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~27s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~25s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~24s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~23s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~21s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~20s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~18s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~17s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~15s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~14s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~13s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~11s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~08s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~06s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 15s
| | 0 % ~calculating
|+ | 1 % ~01m 46s
|++ | 2 % ~01m 47s
|++ | 3 % ~01m 47s
|+++ | 4 % ~01m 47s
|+++ | 5 % ~01m 46s
|++++ | 6 % ~01m 45s
|++++ | 7 % ~01m 44s
|+++++ | 8 % ~01m 42s
|+++++ | 9 % ~01m 41s
|++++++ | 10% ~01m 40s
|++++++ | 11% ~01m 38s
|+++++++ | 12% ~01m 37s
|+++++++ | 13% ~01m 36s
|++++++++ | 14% ~01m 35s
|++++++++ | 15% ~01m 34s
|+++++++++ | 16% ~01m 36s
|+++++++++ | 18% ~01m 34s
|++++++++++ | 19% ~01m 33s
|++++++++++ | 20% ~01m 32s
|+++++++++++ | 21% ~01m 31s
|+++++++++++ | 22% ~01m 30s
|++++++++++++ | 23% ~01m 28s
|++++++++++++ | 24% ~01m 27s
|+++++++++++++ | 25% ~01m 25s
|+++++++++++++ | 26% ~01m 24s
|++++++++++++++ | 27% ~01m 22s
|++++++++++++++ | 28% ~01m 21s
|+++++++++++++++ | 29% ~01m 19s
|+++++++++++++++ | 30% ~01m 18s
|++++++++++++++++ | 31% ~01m 17s
|++++++++++++++++ | 32% ~01m 16s
|+++++++++++++++++ | 33% ~01m 15s
|++++++++++++++++++ | 34% ~01m 14s
|++++++++++++++++++ | 35% ~01m 13s
|+++++++++++++++++++ | 36% ~01m 11s
|+++++++++++++++++++ | 37% ~01m 10s
|++++++++++++++++++++ | 38% ~01m 09s
|++++++++++++++++++++ | 39% ~01m 07s
|+++++++++++++++++++++ | 40% ~01m 06s
|+++++++++++++++++++++ | 41% ~01m 05s
|++++++++++++++++++++++ | 42% ~01m 04s
|++++++++++++++++++++++ | 43% ~01m 03s
|+++++++++++++++++++++++ | 44% ~01m 02s
|+++++++++++++++++++++++ | 45% ~01m 00s
|++++++++++++++++++++++++ | 46% ~59s
|++++++++++++++++++++++++ | 47% ~58s
|+++++++++++++++++++++++++ | 48% ~57s
|+++++++++++++++++++++++++ | 49% ~56s
|++++++++++++++++++++++++++ | 51% ~55s
|++++++++++++++++++++++++++ | 52% ~53s
|+++++++++++++++++++++++++++ | 53% ~53s
|+++++++++++++++++++++++++++ | 54% ~52s
|++++++++++++++++++++++++++++ | 55% ~51s
|++++++++++++++++++++++++++++ | 56% ~50s
|+++++++++++++++++++++++++++++ | 57% ~48s
|+++++++++++++++++++++++++++++ | 58% ~47s
|++++++++++++++++++++++++++++++ | 59% ~46s
|++++++++++++++++++++++++++++++ | 60% ~45s
|+++++++++++++++++++++++++++++++ | 61% ~44s
|+++++++++++++++++++++++++++++++ | 62% ~43s
|++++++++++++++++++++++++++++++++ | 63% ~42s
|++++++++++++++++++++++++++++++++ | 64% ~41s
|+++++++++++++++++++++++++++++++++ | 65% ~39s
|+++++++++++++++++++++++++++++++++ | 66% ~38s
|++++++++++++++++++++++++++++++++++ | 67% ~37s
|+++++++++++++++++++++++++++++++++++ | 68% ~36s
|+++++++++++++++++++++++++++++++++++ | 69% ~35s
|++++++++++++++++++++++++++++++++++++ | 70% ~33s
|++++++++++++++++++++++++++++++++++++ | 71% ~32s
|+++++++++++++++++++++++++++++++++++++ | 72% ~31s
|+++++++++++++++++++++++++++++++++++++ | 73% ~30s
|++++++++++++++++++++++++++++++++++++++ | 74% ~29s
|++++++++++++++++++++++++++++++++++++++ | 75% ~28s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~27s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~26s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~24s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~23s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~22s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~21s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~20s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~19s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~18s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~16s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~15s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~14s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~13s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~12s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~10s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 53s
| | 0 % ~calculating
|+ | 1 % ~01m 37s
|++ | 2 % ~01m 34s
|++ | 3 % ~01m 30s
|+++ | 4 % ~01m 29s
|+++ | 5 % ~01m 27s
|++++ | 6 % ~01m 25s
|++++ | 7 % ~01m 24s
|+++++ | 8 % ~01m 23s
|+++++ | 9 % ~01m 24s
|++++++ | 10% ~01m 23s
|++++++ | 11% ~01m 22s
|+++++++ | 12% ~01m 21s
|+++++++ | 14% ~01m 19s
|++++++++ | 15% ~01m 18s
|++++++++ | 16% ~01m 17s
|+++++++++ | 17% ~01m 16s
|+++++++++ | 18% ~01m 15s
|++++++++++ | 19% ~01m 13s
|++++++++++ | 20% ~01m 12s
|+++++++++++ | 21% ~01m 11s
|+++++++++++ | 22% ~01m 10s
|++++++++++++ | 23% ~01m 09s
|++++++++++++ | 24% ~01m 08s
|+++++++++++++ | 25% ~01m 07s
|++++++++++++++ | 26% ~01m 06s
|++++++++++++++ | 27% ~01m 05s
|+++++++++++++++ | 28% ~01m 04s
|+++++++++++++++ | 29% ~01m 03s
|++++++++++++++++ | 30% ~01m 02s
|++++++++++++++++ | 31% ~01m 01s
|+++++++++++++++++ | 32% ~01m 00s
|+++++++++++++++++ | 33% ~59s
|++++++++++++++++++ | 34% ~58s
|++++++++++++++++++ | 35% ~57s
|+++++++++++++++++++ | 36% ~56s
|+++++++++++++++++++ | 38% ~56s
|++++++++++++++++++++ | 39% ~55s
|++++++++++++++++++++ | 40% ~54s
|+++++++++++++++++++++ | 41% ~53s
|+++++++++++++++++++++ | 42% ~52s
|++++++++++++++++++++++ | 43% ~51s
|++++++++++++++++++++++ | 44% ~51s
|+++++++++++++++++++++++ | 45% ~50s
|+++++++++++++++++++++++ | 46% ~49s
|++++++++++++++++++++++++ | 47% ~48s
|++++++++++++++++++++++++ | 48% ~48s
|+++++++++++++++++++++++++ | 49% ~47s
|+++++++++++++++++++++++++ | 50% ~46s
|++++++++++++++++++++++++++ | 51% ~46s
|+++++++++++++++++++++++++++ | 52% ~45s
|+++++++++++++++++++++++++++ | 53% ~44s
|++++++++++++++++++++++++++++ | 54% ~43s
|++++++++++++++++++++++++++++ | 55% ~42s
|+++++++++++++++++++++++++++++ | 56% ~41s
|+++++++++++++++++++++++++++++ | 57% ~40s
|++++++++++++++++++++++++++++++ | 58% ~39s
|++++++++++++++++++++++++++++++ | 59% ~38s
|+++++++++++++++++++++++++++++++ | 60% ~37s
|+++++++++++++++++++++++++++++++ | 61% ~37s
|++++++++++++++++++++++++++++++++ | 62% ~36s
|++++++++++++++++++++++++++++++++ | 64% ~35s
|+++++++++++++++++++++++++++++++++ | 65% ~34s
|+++++++++++++++++++++++++++++++++ | 66% ~33s
|++++++++++++++++++++++++++++++++++ | 67% ~32s
|++++++++++++++++++++++++++++++++++ | 68% ~31s
|+++++++++++++++++++++++++++++++++++ | 69% ~30s
|+++++++++++++++++++++++++++++++++++ | 70% ~29s
|++++++++++++++++++++++++++++++++++++ | 71% ~28s
|++++++++++++++++++++++++++++++++++++ | 72% ~27s
|+++++++++++++++++++++++++++++++++++++ | 73% ~26s
|+++++++++++++++++++++++++++++++++++++ | 74% ~25s
|++++++++++++++++++++++++++++++++++++++ | 75% ~24s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~23s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~22s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~21s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~20s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~19s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~18s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~17s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~16s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~15s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~14s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~13s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~12s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~11s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~10s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~09s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~07s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~05s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 34s
| | 0 % ~calculating
|+ | 1 % ~02m 11s
|++ | 2 % ~02m 05s
|++ | 3 % ~02m 02s
|+++ | 4 % ~01m 60s
|+++ | 5 % ~02m 05s
|++++ | 6 % ~02m 02s
|++++ | 7 % ~01m 59s
|+++++ | 8 % ~01m 57s
|+++++ | 9 % ~01m 55s
|++++++ | 10% ~01m 54s
|++++++ | 11% ~01m 52s
|+++++++ | 12% ~01m 50s
|+++++++ | 13% ~01m 49s
|++++++++ | 14% ~01m 47s
|++++++++ | 15% ~01m 46s
|+++++++++ | 16% ~01m 45s
|+++++++++ | 17% ~01m 43s
|++++++++++ | 18% ~01m 42s
|++++++++++ | 19% ~01m 40s
|+++++++++++ | 20% ~01m 39s
|+++++++++++ | 21% ~01m 38s
|++++++++++++ | 22% ~01m 36s
|++++++++++++ | 23% ~01m 35s
|+++++++++++++ | 24% ~01m 34s
|+++++++++++++ | 25% ~01m 33s
|++++++++++++++ | 26% ~01m 32s
|++++++++++++++ | 27% ~01m 30s
|+++++++++++++++ | 28% ~01m 29s
|+++++++++++++++ | 29% ~01m 28s
|++++++++++++++++ | 30% ~01m 26s
|++++++++++++++++ | 31% ~01m 25s
|+++++++++++++++++ | 32% ~01m 24s
|+++++++++++++++++ | 33% ~01m 22s
|++++++++++++++++++ | 34% ~01m 21s
|++++++++++++++++++ | 35% ~01m 20s
|+++++++++++++++++++ | 36% ~01m 19s
|+++++++++++++++++++ | 37% ~01m 17s
|++++++++++++++++++++ | 38% ~01m 16s
|++++++++++++++++++++ | 39% ~01m 15s
|+++++++++++++++++++++ | 40% ~01m 14s
|+++++++++++++++++++++ | 41% ~01m 12s
|++++++++++++++++++++++ | 42% ~01m 11s
|++++++++++++++++++++++ | 43% ~01m 10s
|+++++++++++++++++++++++ | 44% ~01m 09s
|+++++++++++++++++++++++ | 45% ~01m 07s
|++++++++++++++++++++++++ | 46% ~01m 06s
|++++++++++++++++++++++++ | 47% ~01m 05s
|+++++++++++++++++++++++++ | 48% ~01m 04s
|+++++++++++++++++++++++++ | 49% ~01m 04s
|++++++++++++++++++++++++++ | 51% ~01m 02s
|++++++++++++++++++++++++++ | 52% ~01m 01s
|+++++++++++++++++++++++++++ | 53% ~60s
|+++++++++++++++++++++++++++ | 54% ~59s
|++++++++++++++++++++++++++++ | 55% ~57s
|++++++++++++++++++++++++++++ | 56% ~56s
|+++++++++++++++++++++++++++++ | 57% ~55s
|+++++++++++++++++++++++++++++ | 58% ~54s
|++++++++++++++++++++++++++++++ | 59% ~52s
|++++++++++++++++++++++++++++++ | 60% ~51s
|+++++++++++++++++++++++++++++++ | 61% ~50s
|+++++++++++++++++++++++++++++++ | 62% ~49s
|++++++++++++++++++++++++++++++++ | 63% ~47s
|++++++++++++++++++++++++++++++++ | 64% ~46s
|+++++++++++++++++++++++++++++++++ | 65% ~45s
|+++++++++++++++++++++++++++++++++ | 66% ~43s
|++++++++++++++++++++++++++++++++++ | 67% ~42s
|++++++++++++++++++++++++++++++++++ | 68% ~41s
|+++++++++++++++++++++++++++++++++++ | 69% ~40s
|+++++++++++++++++++++++++++++++++++ | 70% ~38s
|++++++++++++++++++++++++++++++++++++ | 71% ~37s
|++++++++++++++++++++++++++++++++++++ | 72% ~36s
|+++++++++++++++++++++++++++++++++++++ | 73% ~35s
|+++++++++++++++++++++++++++++++++++++ | 74% ~33s
|++++++++++++++++++++++++++++++++++++++ | 75% ~32s
|++++++++++++++++++++++++++++++++++++++ | 76% ~31s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~29s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~28s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~27s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~26s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~24s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~23s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~22s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~21s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~19s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~18s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~17s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~15s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~14s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~13s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~12s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~08s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 07s
| | 0 % ~calculating
|+ | 1 % ~01m 60s
|++ | 2 % ~01m 56s
|++ | 3 % ~01m 54s
|+++ | 4 % ~01m 53s
|+++ | 5 % ~01m 54s
|++++ | 6 % ~01m 52s
|++++ | 7 % ~01m 51s
|+++++ | 8 % ~01m 49s
|+++++ | 9 % ~01m 47s
|++++++ | 10% ~01m 46s
|++++++ | 11% ~01m 45s
|+++++++ | 12% ~01m 43s
|+++++++ | 13% ~01m 42s
|++++++++ | 14% ~01m 41s
|++++++++ | 15% ~01m 40s
|+++++++++ | 16% ~01m 38s
|+++++++++ | 17% ~01m 37s
|++++++++++ | 18% ~01m 36s
|++++++++++ | 19% ~01m 35s
|+++++++++++ | 20% ~01m 33s
|+++++++++++ | 21% ~01m 32s
|++++++++++++ | 22% ~01m 31s
|++++++++++++ | 23% ~01m 30s
|+++++++++++++ | 24% ~01m 29s
|+++++++++++++ | 26% ~01m 27s
|++++++++++++++ | 27% ~01m 26s
|++++++++++++++ | 28% ~01m 25s
|+++++++++++++++ | 29% ~01m 24s
|+++++++++++++++ | 30% ~01m 23s
|++++++++++++++++ | 31% ~01m 22s
|++++++++++++++++ | 32% ~01m 20s
|+++++++++++++++++ | 33% ~01m 19s
|+++++++++++++++++ | 34% ~01m 18s
|++++++++++++++++++ | 35% ~01m 17s
|++++++++++++++++++ | 36% ~01m 16s
|+++++++++++++++++++ | 37% ~01m 14s
|+++++++++++++++++++ | 38% ~01m 13s
|++++++++++++++++++++ | 39% ~01m 12s
|++++++++++++++++++++ | 40% ~01m 11s
|+++++++++++++++++++++ | 41% ~01m 10s
|+++++++++++++++++++++ | 42% ~01m 09s
|++++++++++++++++++++++ | 43% ~01m 08s
|++++++++++++++++++++++ | 44% ~01m 06s
|+++++++++++++++++++++++ | 45% ~01m 05s
|+++++++++++++++++++++++ | 46% ~01m 04s
|++++++++++++++++++++++++ | 47% ~01m 03s
|++++++++++++++++++++++++ | 48% ~01m 02s
|+++++++++++++++++++++++++ | 49% ~01m 01s
|+++++++++++++++++++++++++ | 50% ~01m 00s
|++++++++++++++++++++++++++ | 51% ~59s
|+++++++++++++++++++++++++++ | 52% ~58s
|+++++++++++++++++++++++++++ | 53% ~57s
|++++++++++++++++++++++++++++ | 54% ~56s
|++++++++++++++++++++++++++++ | 55% ~55s
|+++++++++++++++++++++++++++++ | 56% ~53s
|+++++++++++++++++++++++++++++ | 57% ~52s
|++++++++++++++++++++++++++++++ | 58% ~51s
|++++++++++++++++++++++++++++++ | 59% ~50s
|+++++++++++++++++++++++++++++++ | 60% ~48s
|+++++++++++++++++++++++++++++++ | 61% ~47s
|++++++++++++++++++++++++++++++++ | 62% ~46s
|++++++++++++++++++++++++++++++++ | 63% ~45s
|+++++++++++++++++++++++++++++++++ | 64% ~43s
|+++++++++++++++++++++++++++++++++ | 65% ~42s
|++++++++++++++++++++++++++++++++++ | 66% ~41s
|++++++++++++++++++++++++++++++++++ | 67% ~40s
|+++++++++++++++++++++++++++++++++++ | 68% ~38s
|+++++++++++++++++++++++++++++++++++ | 69% ~37s
|++++++++++++++++++++++++++++++++++++ | 70% ~36s
|++++++++++++++++++++++++++++++++++++ | 71% ~35s
|+++++++++++++++++++++++++++++++++++++ | 72% ~34s
|+++++++++++++++++++++++++++++++++++++ | 73% ~32s
|++++++++++++++++++++++++++++++++++++++ | 74% ~31s
|++++++++++++++++++++++++++++++++++++++ | 76% ~30s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~29s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~27s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~26s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~25s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~24s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~22s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~21s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~20s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~19s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~17s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~16s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~15s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~14s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~12s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~11s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 01s
| | 0 % ~calculating
|+ | 1 % ~02m 05s
|+ | 2 % ~02m 06s
|++ | 3 % ~02m 04s
|++ | 4 % ~02m 05s
|+++ | 5 % ~02m 02s
|+++ | 6 % ~01m 59s
|++++ | 7 % ~01m 58s
|++++ | 8 % ~01m 56s
|+++++ | 9 % ~01m 54s
|+++++ | 10% ~01m 53s
|++++++ | 11% ~01m 52s
|++++++ | 12% ~01m 52s
|+++++++ | 13% ~01m 51s
|+++++++ | 14% ~01m 49s
|++++++++ | 15% ~01m 47s
|++++++++ | 16% ~01m 46s
|+++++++++ | 17% ~01m 45s
|+++++++++ | 18% ~01m 44s
|++++++++++ | 19% ~01m 43s
|++++++++++ | 20% ~01m 42s
|+++++++++++ | 21% ~01m 41s
|+++++++++++ | 22% ~01m 40s
|++++++++++++ | 23% ~01m 38s
|++++++++++++ | 24% ~01m 37s
|+++++++++++++ | 25% ~01m 36s
|+++++++++++++ | 26% ~01m 35s
|++++++++++++++ | 27% ~01m 34s
|++++++++++++++ | 28% ~01m 32s
|+++++++++++++++ | 29% ~01m 31s
|+++++++++++++++ | 30% ~01m 30s
|++++++++++++++++ | 31% ~01m 28s
|++++++++++++++++ | 32% ~01m 27s
|+++++++++++++++++ | 33% ~01m 26s
|+++++++++++++++++ | 34% ~01m 25s
|++++++++++++++++++ | 35% ~01m 23s
|++++++++++++++++++ | 36% ~01m 22s
|+++++++++++++++++++ | 37% ~01m 21s
|+++++++++++++++++++ | 38% ~01m 20s
|++++++++++++++++++++ | 39% ~01m 18s
|++++++++++++++++++++ | 40% ~01m 17s
|+++++++++++++++++++++ | 41% ~01m 16s
|+++++++++++++++++++++ | 42% ~01m 15s
|++++++++++++++++++++++ | 43% ~01m 13s
|++++++++++++++++++++++ | 44% ~01m 12s
|+++++++++++++++++++++++ | 45% ~01m 11s
|+++++++++++++++++++++++ | 46% ~01m 10s
|++++++++++++++++++++++++ | 47% ~01m 09s
|++++++++++++++++++++++++ | 48% ~01m 07s
|+++++++++++++++++++++++++ | 49% ~01m 06s
|+++++++++++++++++++++++++ | 50% ~01m 05s
|++++++++++++++++++++++++++ | 51% ~01m 03s
|++++++++++++++++++++++++++ | 52% ~01m 02s
|+++++++++++++++++++++++++++ | 53% ~01m 01s
|+++++++++++++++++++++++++++ | 54% ~59s
|++++++++++++++++++++++++++++ | 55% ~58s
|++++++++++++++++++++++++++++ | 56% ~57s
|+++++++++++++++++++++++++++++ | 57% ~56s
|+++++++++++++++++++++++++++++ | 58% ~54s
|++++++++++++++++++++++++++++++ | 59% ~53s
|++++++++++++++++++++++++++++++ | 60% ~52s
|+++++++++++++++++++++++++++++++ | 61% ~50s
|+++++++++++++++++++++++++++++++ | 62% ~49s
|++++++++++++++++++++++++++++++++ | 63% ~48s
|++++++++++++++++++++++++++++++++ | 64% ~47s
|+++++++++++++++++++++++++++++++++ | 65% ~45s
|+++++++++++++++++++++++++++++++++ | 66% ~44s
|++++++++++++++++++++++++++++++++++ | 67% ~43s
|++++++++++++++++++++++++++++++++++ | 68% ~41s
|+++++++++++++++++++++++++++++++++++ | 69% ~40s
|+++++++++++++++++++++++++++++++++++ | 70% ~39s
|++++++++++++++++++++++++++++++++++++ | 71% ~38s
|++++++++++++++++++++++++++++++++++++ | 72% ~36s
|+++++++++++++++++++++++++++++++++++++ | 73% ~35s
|+++++++++++++++++++++++++++++++++++++ | 74% ~34s
|++++++++++++++++++++++++++++++++++++++ | 75% ~32s
|++++++++++++++++++++++++++++++++++++++ | 76% ~31s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~30s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~29s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~27s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~26s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~25s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~23s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~22s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~21s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~19s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~18s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~17s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~16s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~14s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~13s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~12s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~08s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 09s
| | 0 % ~calculating
|+ | 1 % ~01m 31s
|++ | 2 % ~01m 32s
|++ | 3 % ~01m 31s
|+++ | 4 % ~01m 31s
|+++ | 5 % ~01m 36s
|++++ | 6 % ~01m 35s
|++++ | 7 % ~01m 32s
|+++++ | 8 % ~01m 31s
|+++++ | 9 % ~01m 29s
|++++++ | 10% ~01m 28s
|++++++ | 11% ~01m 26s
|+++++++ | 12% ~01m 25s
|+++++++ | 13% ~01m 24s
|++++++++ | 14% ~01m 24s
|++++++++ | 15% ~01m 23s
|+++++++++ | 16% ~01m 22s
|+++++++++ | 18% ~01m 21s
|++++++++++ | 19% ~01m 20s
|++++++++++ | 20% ~01m 19s
|+++++++++++ | 21% ~01m 18s
|+++++++++++ | 22% ~01m 17s
|++++++++++++ | 23% ~01m 16s
|++++++++++++ | 24% ~01m 15s
|+++++++++++++ | 25% ~01m 14s
|+++++++++++++ | 26% ~01m 13s
|++++++++++++++ | 27% ~01m 12s
|++++++++++++++ | 28% ~01m 11s
|+++++++++++++++ | 29% ~01m 10s
|+++++++++++++++ | 30% ~01m 09s
|++++++++++++++++ | 31% ~01m 08s
|++++++++++++++++ | 32% ~01m 07s
|+++++++++++++++++ | 33% ~01m 06s
|++++++++++++++++++ | 34% ~01m 05s
|++++++++++++++++++ | 35% ~01m 04s
|+++++++++++++++++++ | 36% ~01m 03s
|+++++++++++++++++++ | 37% ~01m 02s
|++++++++++++++++++++ | 38% ~01m 01s
|++++++++++++++++++++ | 39% ~01m 00s
|+++++++++++++++++++++ | 40% ~59s
|+++++++++++++++++++++ | 41% ~58s
|++++++++++++++++++++++ | 42% ~57s
|++++++++++++++++++++++ | 43% ~56s
|+++++++++++++++++++++++ | 44% ~55s
|+++++++++++++++++++++++ | 45% ~54s
|++++++++++++++++++++++++ | 46% ~53s
|++++++++++++++++++++++++ | 47% ~52s
|+++++++++++++++++++++++++ | 48% ~51s
|+++++++++++++++++++++++++ | 49% ~50s
|++++++++++++++++++++++++++ | 51% ~49s
|++++++++++++++++++++++++++ | 52% ~48s
|+++++++++++++++++++++++++++ | 53% ~47s
|+++++++++++++++++++++++++++ | 54% ~46s
|++++++++++++++++++++++++++++ | 55% ~45s
|++++++++++++++++++++++++++++ | 56% ~44s
|+++++++++++++++++++++++++++++ | 57% ~43s
|+++++++++++++++++++++++++++++ | 58% ~41s
|++++++++++++++++++++++++++++++ | 59% ~40s
|++++++++++++++++++++++++++++++ | 60% ~39s
|+++++++++++++++++++++++++++++++ | 61% ~38s
|+++++++++++++++++++++++++++++++ | 62% ~37s
|++++++++++++++++++++++++++++++++ | 63% ~36s
|++++++++++++++++++++++++++++++++ | 64% ~35s
|+++++++++++++++++++++++++++++++++ | 65% ~34s
|+++++++++++++++++++++++++++++++++ | 66% ~33s
|++++++++++++++++++++++++++++++++++ | 67% ~32s
|+++++++++++++++++++++++++++++++++++ | 68% ~31s
|+++++++++++++++++++++++++++++++++++ | 69% ~30s
|++++++++++++++++++++++++++++++++++++ | 70% ~29s
|++++++++++++++++++++++++++++++++++++ | 71% ~28s
|+++++++++++++++++++++++++++++++++++++ | 72% ~27s
|+++++++++++++++++++++++++++++++++++++ | 73% ~26s
|++++++++++++++++++++++++++++++++++++++ | 74% ~25s
|++++++++++++++++++++++++++++++++++++++ | 75% ~24s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~23s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~22s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~21s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~20s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~19s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~18s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~17s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~16s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~15s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~14s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~13s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~12s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~11s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~10s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~09s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~07s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~06s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~05s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 38s
| | 0 % ~calculating
|+ | 1 % ~01m 45s
|++ | 2 % ~01m 44s
|++ | 3 % ~01m 51s
|+++ | 4 % ~01m 46s
|+++ | 5 % ~01m 42s
|++++ | 6 % ~01m 40s
|++++ | 7 % ~01m 38s
|+++++ | 8 % ~01m 37s
|+++++ | 9 % ~01m 36s
|++++++ | 10% ~01m 34s
|++++++ | 11% ~01m 33s
|+++++++ | 12% ~01m 33s
|+++++++ | 13% ~01m 31s
|++++++++ | 14% ~01m 30s
|++++++++ | 15% ~01m 29s
|+++++++++ | 16% ~01m 28s
|+++++++++ | 18% ~01m 27s
|++++++++++ | 19% ~01m 25s
|++++++++++ | 20% ~01m 24s
|+++++++++++ | 21% ~01m 23s
|+++++++++++ | 22% ~01m 22s
|++++++++++++ | 23% ~01m 20s
|++++++++++++ | 24% ~01m 19s
|+++++++++++++ | 25% ~01m 18s
|+++++++++++++ | 26% ~01m 17s
|++++++++++++++ | 27% ~01m 16s
|++++++++++++++ | 28% ~01m 15s
|+++++++++++++++ | 29% ~01m 14s
|+++++++++++++++ | 30% ~01m 13s
|++++++++++++++++ | 31% ~01m 12s
|++++++++++++++++ | 32% ~01m 11s
|+++++++++++++++++ | 33% ~01m 10s
|++++++++++++++++++ | 34% ~01m 09s
|++++++++++++++++++ | 35% ~01m 08s
|+++++++++++++++++++ | 36% ~01m 07s
|+++++++++++++++++++ | 37% ~01m 06s
|++++++++++++++++++++ | 38% ~01m 05s
|++++++++++++++++++++ | 39% ~01m 04s
|+++++++++++++++++++++ | 40% ~01m 03s
|+++++++++++++++++++++ | 41% ~01m 02s
|++++++++++++++++++++++ | 42% ~01m 01s
|++++++++++++++++++++++ | 43% ~60s
|+++++++++++++++++++++++ | 44% ~59s
|+++++++++++++++++++++++ | 45% ~58s
|++++++++++++++++++++++++ | 46% ~56s
|++++++++++++++++++++++++ | 47% ~55s
|+++++++++++++++++++++++++ | 48% ~54s
|+++++++++++++++++++++++++ | 49% ~53s
|++++++++++++++++++++++++++ | 51% ~52s
|++++++++++++++++++++++++++ | 52% ~51s
|+++++++++++++++++++++++++++ | 53% ~50s
|+++++++++++++++++++++++++++ | 54% ~49s
|++++++++++++++++++++++++++++ | 55% ~48s
|++++++++++++++++++++++++++++ | 56% ~47s
|+++++++++++++++++++++++++++++ | 57% ~46s
|+++++++++++++++++++++++++++++ | 58% ~45s
|++++++++++++++++++++++++++++++ | 59% ~44s
|++++++++++++++++++++++++++++++ | 60% ~43s
|+++++++++++++++++++++++++++++++ | 61% ~41s
|+++++++++++++++++++++++++++++++ | 62% ~40s
|++++++++++++++++++++++++++++++++ | 63% ~39s
|++++++++++++++++++++++++++++++++ | 64% ~38s
|+++++++++++++++++++++++++++++++++ | 65% ~37s
|+++++++++++++++++++++++++++++++++ | 66% ~36s
|++++++++++++++++++++++++++++++++++ | 67% ~35s
|+++++++++++++++++++++++++++++++++++ | 68% ~34s
|+++++++++++++++++++++++++++++++++++ | 69% ~33s
|++++++++++++++++++++++++++++++++++++ | 70% ~32s
|++++++++++++++++++++++++++++++++++++ | 71% ~31s
|+++++++++++++++++++++++++++++++++++++ | 72% ~30s
|+++++++++++++++++++++++++++++++++++++ | 73% ~28s
|++++++++++++++++++++++++++++++++++++++ | 74% ~27s
|++++++++++++++++++++++++++++++++++++++ | 75% ~26s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~25s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~24s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~23s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~22s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~21s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~20s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~19s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~17s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~16s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~15s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~14s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~13s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~12s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~11s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~10s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~09s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~05s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 01m 45s
| | 0 % ~calculating
|+ | 1 % ~04m 16s
|+ | 2 % ~04m 15s
|++ | 3 % ~04m 08s
|++ | 4 % ~04m 05s
|+++ | 5 % ~03m 60s
|+++ | 6 % ~04m 01s
|++++ | 7 % ~03m 59s
|++++ | 8 % ~03m 57s
|+++++ | 9 % ~03m 54s
|+++++ | 10% ~03m 51s
|++++++ | 11% ~03m 49s
|++++++ | 12% ~03m 46s
|+++++++ | 13% ~03m 45s
|+++++++ | 14% ~03m 42s
|++++++++ | 15% ~03m 40s
|++++++++ | 16% ~03m 38s
|+++++++++ | 17% ~03m 35s
|+++++++++ | 18% ~03m 32s
|++++++++++ | 19% ~03m 30s
|++++++++++ | 20% ~03m 27s
|+++++++++++ | 21% ~03m 25s
|+++++++++++ | 22% ~03m 23s
|++++++++++++ | 23% ~03m 20s
|++++++++++++ | 24% ~03m 17s
|+++++++++++++ | 25% ~03m 15s
|+++++++++++++ | 26% ~03m 12s
|++++++++++++++ | 27% ~03m 09s
|++++++++++++++ | 28% ~03m 07s
|+++++++++++++++ | 29% ~03m 03s
|+++++++++++++++ | 30% ~03m 00s
|++++++++++++++++ | 31% ~02m 57s
|++++++++++++++++ | 32% ~02m 54s
|+++++++++++++++++ | 33% ~02m 52s
|+++++++++++++++++ | 34% ~02m 49s
|++++++++++++++++++ | 35% ~02m 46s
|++++++++++++++++++ | 36% ~02m 43s
|+++++++++++++++++++ | 37% ~02m 41s
|+++++++++++++++++++ | 38% ~02m 39s
|++++++++++++++++++++ | 39% ~02m 36s
|++++++++++++++++++++ | 40% ~02m 33s
|+++++++++++++++++++++ | 41% ~02m 31s
|+++++++++++++++++++++ | 42% ~02m 28s
|++++++++++++++++++++++ | 43% ~02m 26s
|++++++++++++++++++++++ | 44% ~02m 23s
|+++++++++++++++++++++++ | 45% ~02m 21s
|+++++++++++++++++++++++ | 46% ~02m 18s
|++++++++++++++++++++++++ | 47% ~02m 15s
|++++++++++++++++++++++++ | 48% ~02m 13s
|+++++++++++++++++++++++++ | 49% ~02m 10s
|+++++++++++++++++++++++++ | 50% ~02m 08s
|++++++++++++++++++++++++++ | 51% ~02m 05s
|++++++++++++++++++++++++++ | 52% ~02m 02s
|+++++++++++++++++++++++++++ | 53% ~01m 60s
|+++++++++++++++++++++++++++ | 54% ~01m 57s
|++++++++++++++++++++++++++++ | 55% ~01m 54s
|++++++++++++++++++++++++++++ | 56% ~01m 52s
|+++++++++++++++++++++++++++++ | 57% ~01m 49s
|+++++++++++++++++++++++++++++ | 58% ~01m 46s
|++++++++++++++++++++++++++++++ | 59% ~01m 44s
|++++++++++++++++++++++++++++++ | 60% ~01m 41s
|+++++++++++++++++++++++++++++++ | 61% ~01m 39s
|+++++++++++++++++++++++++++++++ | 62% ~01m 36s
|++++++++++++++++++++++++++++++++ | 63% ~01m 34s
|++++++++++++++++++++++++++++++++ | 64% ~01m 31s
|+++++++++++++++++++++++++++++++++ | 65% ~01m 29s
|+++++++++++++++++++++++++++++++++ | 66% ~01m 26s
|++++++++++++++++++++++++++++++++++ | 67% ~01m 23s
|++++++++++++++++++++++++++++++++++ | 68% ~01m 21s
|+++++++++++++++++++++++++++++++++++ | 69% ~01m 18s
|+++++++++++++++++++++++++++++++++++ | 70% ~01m 16s
|++++++++++++++++++++++++++++++++++++ | 71% ~01m 13s
|++++++++++++++++++++++++++++++++++++ | 72% ~01m 11s
|+++++++++++++++++++++++++++++++++++++ | 73% ~01m 08s
|+++++++++++++++++++++++++++++++++++++ | 74% ~01m 06s
|++++++++++++++++++++++++++++++++++++++ | 75% ~01m 03s
|++++++++++++++++++++++++++++++++++++++ | 76% ~01m 01s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~58s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~56s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~53s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~51s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~48s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~46s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~43s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~41s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~38s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~35s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~33s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~30s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~28s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~25s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~23s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~20s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~18s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~15s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~13s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~08s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~05s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 04m 12s
| | 0 % ~calculating
|+ | 1 % ~02m 27s
|+ | 2 % ~02m 26s
|++ | 3 % ~02m 24s
|++ | 4 % ~02m 24s
|+++ | 5 % ~02m 22s
|+++ | 6 % ~02m 18s
|++++ | 7 % ~02m 16s
|++++ | 8 % ~02m 14s
|+++++ | 9 % ~02m 13s
|+++++ | 10% ~02m 12s
|++++++ | 11% ~02m 10s
|++++++ | 12% ~02m 09s
|+++++++ | 13% ~02m 08s
|+++++++ | 14% ~02m 07s
|++++++++ | 15% ~02m 06s
|++++++++ | 16% ~02m 05s
|+++++++++ | 17% ~02m 03s
|+++++++++ | 18% ~02m 02s
|++++++++++ | 19% ~02m 01s
|++++++++++ | 20% ~01m 59s
|+++++++++++ | 21% ~01m 57s
|+++++++++++ | 22% ~01m 56s
|++++++++++++ | 23% ~01m 54s
|++++++++++++ | 24% ~01m 53s
|+++++++++++++ | 25% ~01m 51s
|+++++++++++++ | 26% ~01m 50s
|++++++++++++++ | 27% ~01m 48s
|++++++++++++++ | 28% ~01m 47s
|+++++++++++++++ | 29% ~01m 46s
|+++++++++++++++ | 30% ~01m 44s
|++++++++++++++++ | 31% ~01m 43s
|++++++++++++++++ | 32% ~01m 41s
|+++++++++++++++++ | 33% ~01m 40s
|+++++++++++++++++ | 34% ~01m 38s
|++++++++++++++++++ | 35% ~01m 37s
|++++++++++++++++++ | 36% ~01m 35s
|+++++++++++++++++++ | 37% ~01m 34s
|+++++++++++++++++++ | 38% ~01m 32s
|++++++++++++++++++++ | 39% ~01m 31s
|++++++++++++++++++++ | 40% ~01m 29s
|+++++++++++++++++++++ | 41% ~01m 28s
|+++++++++++++++++++++ | 42% ~01m 26s
|++++++++++++++++++++++ | 43% ~01m 25s
|++++++++++++++++++++++ | 44% ~01m 23s
|+++++++++++++++++++++++ | 45% ~01m 22s
|+++++++++++++++++++++++ | 46% ~01m 20s
|++++++++++++++++++++++++ | 47% ~01m 19s
|++++++++++++++++++++++++ | 48% ~01m 18s
|+++++++++++++++++++++++++ | 49% ~01m 16s
|+++++++++++++++++++++++++ | 50% ~01m 15s
|++++++++++++++++++++++++++ | 51% ~01m 13s
|++++++++++++++++++++++++++ | 52% ~01m 12s
|+++++++++++++++++++++++++++ | 53% ~01m 10s
|+++++++++++++++++++++++++++ | 54% ~01m 09s
|++++++++++++++++++++++++++++ | 55% ~01m 07s
|++++++++++++++++++++++++++++ | 56% ~01m 06s
|+++++++++++++++++++++++++++++ | 57% ~01m 04s
|+++++++++++++++++++++++++++++ | 58% ~01m 03s
|++++++++++++++++++++++++++++++ | 59% ~01m 01s
|++++++++++++++++++++++++++++++ | 60% ~60s
|+++++++++++++++++++++++++++++++ | 61% ~58s
|+++++++++++++++++++++++++++++++ | 62% ~57s
|++++++++++++++++++++++++++++++++ | 63% ~55s
|++++++++++++++++++++++++++++++++ | 64% ~54s
|+++++++++++++++++++++++++++++++++ | 65% ~52s
|+++++++++++++++++++++++++++++++++ | 66% ~51s
|++++++++++++++++++++++++++++++++++ | 67% ~49s
|++++++++++++++++++++++++++++++++++ | 68% ~48s
|+++++++++++++++++++++++++++++++++++ | 69% ~46s
|+++++++++++++++++++++++++++++++++++ | 70% ~45s
|++++++++++++++++++++++++++++++++++++ | 71% ~43s
|++++++++++++++++++++++++++++++++++++ | 72% ~42s
|+++++++++++++++++++++++++++++++++++++ | 73% ~40s
|+++++++++++++++++++++++++++++++++++++ | 74% ~39s
|++++++++++++++++++++++++++++++++++++++ | 75% ~37s
|++++++++++++++++++++++++++++++++++++++ | 76% ~36s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~34s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~33s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~31s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~30s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~28s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~27s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~25s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~24s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~22s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~21s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~19s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~18s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~16s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~15s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~13s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~12s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~09s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~06s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 28s
| | 0 % ~calculating
|+ | 1 % ~02m 23s
|+ | 2 % ~02m 18s
|++ | 3 % ~02m 14s
|++ | 4 % ~02m 11s
|+++ | 5 % ~02m 09s
|+++ | 6 % ~02m 07s
|++++ | 7 % ~02m 05s
|++++ | 8 % ~02m 03s
|+++++ | 9 % ~02m 01s
|+++++ | 10% ~01m 60s
|++++++ | 11% ~01m 59s
|++++++ | 12% ~01m 58s
|+++++++ | 13% ~01m 57s
|+++++++ | 14% ~01m 56s
|++++++++ | 15% ~01m 54s
|++++++++ | 16% ~01m 53s
|+++++++++ | 17% ~01m 52s
|+++++++++ | 18% ~01m 51s
|++++++++++ | 19% ~01m 49s
|++++++++++ | 20% ~01m 48s
|+++++++++++ | 21% ~01m 46s
|+++++++++++ | 22% ~01m 45s
|++++++++++++ | 23% ~01m 44s
|++++++++++++ | 24% ~01m 43s
|+++++++++++++ | 25% ~01m 41s
|+++++++++++++ | 26% ~01m 40s
|++++++++++++++ | 27% ~01m 39s
|++++++++++++++ | 28% ~01m 38s
|+++++++++++++++ | 29% ~01m 36s
|+++++++++++++++ | 30% ~01m 35s
|++++++++++++++++ | 31% ~01m 34s
|++++++++++++++++ | 32% ~01m 33s
|+++++++++++++++++ | 33% ~01m 31s
|+++++++++++++++++ | 34% ~01m 30s
|++++++++++++++++++ | 35% ~01m 29s
|++++++++++++++++++ | 36% ~01m 27s
|+++++++++++++++++++ | 37% ~01m 26s
|+++++++++++++++++++ | 38% ~01m 25s
|++++++++++++++++++++ | 39% ~01m 24s
|++++++++++++++++++++ | 40% ~01m 22s
|+++++++++++++++++++++ | 41% ~01m 21s
|+++++++++++++++++++++ | 42% ~01m 20s
|++++++++++++++++++++++ | 43% ~01m 18s
|++++++++++++++++++++++ | 44% ~01m 17s
|+++++++++++++++++++++++ | 45% ~01m 16s
|+++++++++++++++++++++++ | 46% ~01m 14s
|++++++++++++++++++++++++ | 47% ~01m 13s
|++++++++++++++++++++++++ | 48% ~01m 11s
|+++++++++++++++++++++++++ | 49% ~01m 10s
|+++++++++++++++++++++++++ | 50% ~01m 09s
|++++++++++++++++++++++++++ | 51% ~01m 07s
|++++++++++++++++++++++++++ | 52% ~01m 06s
|+++++++++++++++++++++++++++ | 53% ~01m 05s
|+++++++++++++++++++++++++++ | 54% ~01m 03s
|++++++++++++++++++++++++++++ | 55% ~01m 02s
|++++++++++++++++++++++++++++ | 56% ~01m 01s
|+++++++++++++++++++++++++++++ | 57% ~59s
|+++++++++++++++++++++++++++++ | 58% ~58s
|++++++++++++++++++++++++++++++ | 59% ~57s
|++++++++++++++++++++++++++++++ | 60% ~55s
|+++++++++++++++++++++++++++++++ | 61% ~54s
|+++++++++++++++++++++++++++++++ | 62% ~53s
|++++++++++++++++++++++++++++++++ | 63% ~51s
|++++++++++++++++++++++++++++++++ | 64% ~50s
|+++++++++++++++++++++++++++++++++ | 65% ~49s
|+++++++++++++++++++++++++++++++++ | 66% ~47s
|++++++++++++++++++++++++++++++++++ | 67% ~46s
|++++++++++++++++++++++++++++++++++ | 68% ~45s
|+++++++++++++++++++++++++++++++++++ | 69% ~43s
|+++++++++++++++++++++++++++++++++++ | 70% ~42s
|++++++++++++++++++++++++++++++++++++ | 71% ~41s
|++++++++++++++++++++++++++++++++++++ | 72% ~39s
|+++++++++++++++++++++++++++++++++++++ | 73% ~38s
|+++++++++++++++++++++++++++++++++++++ | 74% ~36s
|++++++++++++++++++++++++++++++++++++++ | 75% ~35s
|++++++++++++++++++++++++++++++++++++++ | 76% ~33s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~32s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~31s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~29s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~28s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~26s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~25s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~24s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~22s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~21s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~19s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~18s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~17s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~15s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~14s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~12s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~11s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~10s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~08s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~07s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02m 16s
Display the top markers you computed above.
#tiss.markers %>% group_by(cluster) %>% top_n(5, avg_diff)
At a coarse level, we can use canonical markers to match the unbiased clustering to known cell types:
# stash current cluster IDs
tiss <- StashIdent(object = tiss, save.name = "cluster.ids")
# enumerate current cluster IDs and the labels for them
cluster.ids <- c(0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11)
cell_ontology_class <-
c(
"fibroblast",
"fibroblast",
"endothelial cell",
"fibroblast",
"leukocyte",
"endothelial cell",
"endothelial cell",
"smooth muscle cell",
"endocardial cell",
"cardiac muscle cell",
"leukocyte",
"NA"
)
cell_ontology_id <-
c(
"CL:0000057",
"CL:0000057",
"CL:0000115",
"CL:0000057",
"CL:0000738",
"CL:0000115",
"CL:0000115",
"CL:0000192",
"CL:0002350",
"CL:0000746",
"CL:0000738",
"NA"
)
tiss@meta.data[,'free_annotation'] <- NA
tiss@meta.data[,'cell_ontology_class'] <- plyr::mapvalues(x = tiss@ident, from = cluster.ids, to = cell_ontology_class)
tiss@meta.data[,'cell_ontology_id'] <- plyr::mapvalues(x = tiss@ident, from = cluster.ids, to = cell_ontology_id)
tiss@meta.data[tiss@cell.names,'cell_ontology_class'] <- as.character(tiss@meta.data$cell_ontology_class)
tiss@meta.data[tiss@cell.names,'cell_ontology_id'] <- as.character(tiss@meta.data$cell_ontology_id)
TSNEPlot(object = tiss, do.label = TRUE, pt.size = 0.5, group.by='cell_ontology_class')
Color by metadata, like plate barcode, to check for batch effects.
TSNEPlot(object = tiss, do.return = TRUE, group.by = "plate.barcode")
Print a table showing the count of cells in each identity category from each plate.
table(as.character(tiss@ident), as.character(tiss@meta.data$plate.barcode))
B000412 B000633 B000634 B000636 B002010 B002011 B002421 B002423 B002427 B002428
0 16 107 69 4 178 29 14 97 118 76
1 10 23 47 5 25 2 11 5 66 1
10 3 4 0 3 6 1 5 12 3 3
11 0 1 4 1 2 0 0 2 0 2
2 59 33 14 42 30 6 73 68 19 9
3 2 9 0 5 7 156 0 23 51 187
4 5 22 5 8 32 10 9 26 20 9
5 7 13 12 11 10 1 13 4 24 0
6 29 3 2 19 1 3 31 13 6 8
7 7 10 4 2 5 2 9 9 9 6
8 0 27 20 0 26 9 3 1 14 16
9 0 4 1 1 1 1 2 0 3 1
B002429 MAA000398 MAA000399 MAA000400 MAA000452 MAA000586 MAA000587 MAA000589
0 2 6 7 34 4 86 1 6
1 0 72 41 65 45 24 22 21
10 3 3 2 2 1 10 2 0
11 0 3 2 2 1 0 0 0
2 12 4 22 4 23 13 18 29
3 8 1 0 0 0 3 1 0
4 3 19 15 13 17 36 13 14
5 0 33 40 11 58 10 11 9
6 79 0 9 0 3 1 2 4
7 7 17 13 11 14 8 12 11
8 0 3 2 4 0 9 1 1
9 0 1 0 1 0 2 0 0
MAA000898 MAA000899 MAA000901 MAA000903 MAA000917 MAA000918 MAA000919 MAA000920
0 3 11 2 31 4 2 4 16
1 5 17 14 20 1 19 51 66
10 0 2 3 8 3 1 1 0
11 0 0 1 2 0 0 1 0
2 7 0 21 28 9 5 4 10
3 1 1 0 9 1 0 2 2
4 3 6 16 41 6 17 13 3
5 7 1 15 18 0 11 18 11
6 2 0 2 3 19 0 0 4
7 1 1 6 14 3 8 6 8
8 0 4 1 5 0 1 8 6
9 0 0 0 1 0 0 7 7
MAA000936 MAA100037 MAA100096 MAA100097
0 17 0 0 0
1 25 2 0 1
10 16 0 0 0
11 4 0 0 0
2 2 1 0 0
3 0 0 0 0
4 45 0 0 0
5 15 2 0 0
6 0 4 0 0
7 16 1 0 0
8 3 1 0 0
9 0 40 28 32
We can repeat the above analysis on a subset of cells, defined using cluster IDs or some other metadata. This is a good way to drill down and find substructure.
# Subset data based on cluster id
subtiss <- SubsetData(object = tiss, ident.use = c(7), do.center = F, do.scale = F, cells.use = )
# To subset data based on cell_ontology_class or other metadata, you can explicitly pass cell names
# anno = 'exocrine cells'
# cells.to.use = tiss@cell.names[which(tiss@meta.data$cell_ontology_class == anno)]
# subtiss <- SubsetData(object = tiss, cells.use = cells.to.use, do.center = F, do.scale = F)
subtiss <- NormalizeData(object = subtiss)
Performing log-normalization
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
**************************************************|
subtiss <- ScaleData(object = subtiss, vars.to.regress = c("nReads", "percent.ribo","Rn45s"))
[1] "Regressing out nReads" "Regressing out percent.ribo"
[3] "Regressing out Rn45s"
|
| | 0%
|
|= | 1%
|
|= | 2%
|
|== | 2%
|
|== | 3%
|
|=== | 3%
|
|=== | 4%
|
|==== | 5%
|
|==== | 6%
|
|===== | 6%
|
|===== | 7%
|
|====== | 7%
|
|====== | 8%
|
|======= | 9%
|
|======== | 9%
|
|======== | 10%
|
|========= | 11%
|
|========= | 12%
|
|========== | 12%
|
|========== | 13%
|
|=========== | 13%
|
|=========== | 14%
|
|============ | 15%
|
|============= | 16%
|
|============= | 17%
|
|============== | 17%
|
|============== | 18%
|
|=============== | 18%
|
|=============== | 19%
|
|================ | 20%
|
|================ | 21%
|
|================= | 21%
|
|================= | 22%
|
|================== | 22%
|
|================== | 23%
|
|=================== | 24%
|
|==================== | 25%
|
|===================== | 26%
|
|====================== | 27%
|
|====================== | 28%
|
|======================= | 28%
|
|======================= | 29%
|
|======================== | 29%
|
|======================== | 30%
|
|========================= | 31%
|
|========================= | 32%
|
|========================== | 32%
|
|========================== | 33%
|
|=========================== | 33%
|
|=========================== | 34%
|
|============================ | 35%
|
|============================= | 36%
|
|============================= | 37%
|
|============================== | 37%
|
|============================== | 38%
|
|=============================== | 38%
|
|=============================== | 39%
|
|================================ | 40%
|
|================================ | 41%
|
|================================= | 41%
|
|================================== | 42%
|
|================================== | 43%
|
|=================================== | 43%
|
|=================================== | 44%
|
|==================================== | 44%
|
|==================================== | 45%
|
|===================================== | 46%
|
|===================================== | 47%
|
|====================================== | 47%
|
|====================================== | 48%
|
|======================================= | 48%
|
|======================================= | 49%
|
|======================================== | 50%
|
|========================================= | 51%
|
|========================================= | 52%
|
|========================================== | 52%
|
|========================================== | 53%
|
|=========================================== | 53%
|
|=========================================== | 54%
|
|============================================ | 55%
|
|============================================ | 56%
|
|============================================= | 56%
|
|============================================= | 57%
|
|============================================== | 57%
|
|============================================== | 58%
|
|=============================================== | 59%
|
|================================================ | 59%
|
|================================================ | 60%
|
|================================================= | 61%
|
|================================================= | 62%
|
|================================================== | 62%
|
|================================================== | 63%
|
|=================================================== | 63%
|
|=================================================== | 64%
|
|==================================================== | 65%
|
|===================================================== | 66%
|
|===================================================== | 67%
|
|====================================================== | 67%
|
|====================================================== | 68%
|
|======================================================= | 68%
|
|======================================================= | 69%
|
|======================================================== | 70%
|
|======================================================== | 71%
|
|========================================================= | 71%
|
|========================================================= | 72%
|
|========================================================== | 72%
|
|========================================================== | 73%
|
|=========================================================== | 74%
|
|============================================================ | 75%
|
|============================================================= | 76%
|
|============================================================== | 77%
|
|============================================================== | 78%
|
|=============================================================== | 78%
|
|=============================================================== | 79%
|
|================================================================ | 79%
|
|================================================================ | 80%
|
|================================================================= | 81%
|
|================================================================= | 82%
|
|================================================================== | 82%
|
|================================================================== | 83%
|
|=================================================================== | 83%
|
|=================================================================== | 84%
|
|==================================================================== | 85%
|
|===================================================================== | 86%
|
|===================================================================== | 87%
|
|====================================================================== | 87%
|
|====================================================================== | 88%
|
|======================================================================= | 88%
|
|======================================================================= | 89%
|
|======================================================================== | 90%
|
|======================================================================== | 91%
|
|========================================================================= | 91%
|
|========================================================================== | 92%
|
|========================================================================== | 93%
|
|=========================================================================== | 93%
|
|=========================================================================== | 94%
|
|============================================================================ | 94%
|
|============================================================================ | 95%
|
|============================================================================= | 96%
|
|============================================================================= | 97%
|
|============================================================================== | 97%
|
|============================================================================== | 98%
|
|=============================================================================== | 98%
|
|=============================================================================== | 99%
|
|================================================================================| 100%
[1] "Scaling data matrix"
|
| | 0%
|
|================================================================================| 100%
subtiss <- FindVariableGenes(object = subtiss, do.plot = TRUE, x.high.cutoff = Inf, y.cutoff = 0.8)
Calculating gene means
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variance to mean ratios
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
**************************************************|
subtiss <- RunPCA(object = subtiss, pcs.compute = 20)
[1] "PC1"
[1] "Postn" "Vtn" "Col6a1" "Ifitm3" "Mgp"
[6] "Tnfrsf21" "Col6a2" "Smpdl3a" "Col3a1" "E130203B14Rik"
[11] "Kdelr3" "Plat" "Nr1h3" "P2ry14" "Cfh"
[16] "Fabp5" "Tppp3" "Cspg4" "Hsd11b1" "Spon1"
[21] "Fn1" "Trib2" "Dcn" "Rbp1" "Hic1"
[26] "Cd300lg" "Pea15a" "Dusp6" "Tspan13" "Cxcl12"
[1] ""
[1] "Myh11" "Tagln" "Nrip2" "Sorbs2" "Acta2"
[6] "Mustn1" "Palld" "Rcan2" "Pln" "Csrp1"
[11] "Wtip" "Lmod1" "Pcp4l1" "Rasd1" "Tpm1"
[16] "Asb2" "Entpd1" "Myl9" "Sorbs1" "Clu"
[21] "Perp" "Tpm2" "B230120H23Rik" "Ccdc3" "Gpr20"
[26] "Mylk" "Ptrf" "Ckb" "Cnn1" "Npy1r"
[1] ""
[1] ""
[1] "PC2"
[1] "Col14a1" "Loxl1" "Fhl1" "Apoe" "Col6a2" "Col6a1" "Fam124a"
[8] "Ptgis" "Rgs2" "Eln" "Gsn" "Dkk3" "F2r" "Adamts2"
[15] "Tmem176b" "Hsd11b1" "Srpx" "Igfbp3" "Id2" "Lgals3" "Adamtsl2"
[22] "Adh1" "Dpt" "Cdc42ep3" "Stc1" "Fbln5" "Fetub" "Col8a1"
[29] "Id4" "Lsp1"
[1] ""
[1] "Cxcl12" "Vtn" "Plxdc1" "P2ry14" "Plxdc2"
[6] "Pcp4l1" "Ddit4l" "Opcml" "Klhl23" "Phf17"
[11] "Igfbp5" "Chd2" "Gm20199" "Ppfibp2" "Eftud2"
[16] "Adora2b" "Slc24a3" "Gm17066" "Atg16l1" "Actc1"
[21] "Pde4c" "Sema7a" "Car2" "Ednrb" "Aatk"
[26] "Boc" "Htr7" "H2-Eb1" "C330007P06Rik" "Gimap6"
[1] ""
[1] ""
[1] "PC3"
[1] "Ifi47" "Ifit1" "Plat" "Cd34" "Ifit3" "Tgtp2" "Ripk1" "Iigp1" "Dusp6"
[10] "Cmpk2" "Usp18" "Cd274" "Igtp" "Plxdc2" "Rsad2" "Haus3" "Sele" "Parp2"
[19] "Tacc3" "Snip1" "Dcaf4" "Armc10" "Bcar3" "Tyms" "Mocos" "Ly6c1" "Prc1"
[28] "Ly6a" "Btbd19" "Gbp2"
[1] ""
[1] "Gpbp1l1" "Dnajb5" "Mocs1" "D930016D06Rik" "Ctdsp2"
[6] "Gm17066" "Phxr4" "Trmt5" "1810014F10Rik" "Cwc25"
[11] "R74862" "Tgfbrap1" "Ids" "Samd14" "Med30"
[16] "Gm20199" "Slc11a2" "Gemin5" "1700013N18Rik" "9930104L06Rik"
[21] "Amotl2" "Tgfbr1" "Pcgf3" "Rufy3" "Thap4"
[26] "Ogn" "Fam101a" "Vezt" "Nkd2" "Vps13a"
[1] ""
[1] ""
[1] "PC4"
[1] "Cdc42ep3" "Gpx3" "Fbln5" "Cxcl12" "Sdc1" "Gstm1" "Apoe"
[8] "Chrdl1" "Cd36" "Prss23" "Lims2" "Tppp3" "Lmcd1" "Prelp"
[15] "Eya2" "Enpp2" "Ogn" "Adam15" "Mfap5" "Mafk" "Nov"
[22] "Antxr1" "Slc11a1" "Tmem119" "Ptrf" "Pdgfd" "Myl9" "Lrp4"
[29] "Lgals3" "Fibin"
[1] ""
[1] "Lztfl1" "Nt5dc1" "Lars2" "Morc3" "C2cd3"
[6] "Klhl5" "Smarca1" "Mknk2" "St8sia6" "9130011E15Rik"
[11] "Fam168a" "Mtor" "Cspg4" "Ep300" "Wisp1"
[16] "Crat" "Hexim1" "BC068281" "Nop2" "Zfp276"
[21] "Trim36" "Tmem170b" "Git1" "Zfp235" "Megf6"
[26] "Cd300lg" "Rps6ka2" "Ubiad1" "Tfpi2" "Cc2d2a"
[1] ""
[1] ""
[1] "PC5"
[1] "Adh1" "Cd300lg" "Nrxn1" "Fetub" "Usp24" "Grpel1" "Frzb"
[8] "Rrp36" "Tusc2" "Bet1l" "Fam198b" "Slc25a29" "Rusc1" "Unk"
[15] "Dbc1" "Pde12" "Tle3" "Gcc2" "Galnt11" "Adamtsl2" "Cybasc3"
[22] "Gstm1" "Zfand1" "Prkaa1" "Socs4" "Prrt2" "Rabl5" "Gdf10"
[29] "Ankrd27" "Slc35b3"
[1] ""
[1] "Dnajb5" "Gm17066" "Chac2" "Tgfbrap1" "Usp33"
[6] "Psd3" "Rufy3" "Zfp710" "4930579G24Rik" "Slc25a40"
[11] "Iigp1" "Bcl2l2" "Nkd2" "Gpbp1l1" "AI480653"
[16] "1810014F10Rik" "Hspa4l" "Cand1" "D930016D06Rik" "Med30"
[21] "Nrd1" "Twistnb" "Zfp1" "Pcgf3" "1700013N18Rik"
[26] "Cwc25" "Spg20" "Ifit3" "Snap29" "Ifi47"
[1] ""
[1] ""
subtiss <- ProjectPCA(object = subtiss, do.print = FALSE)
Run Principal Component Analysis.
subtiss <- RunPCA(object = subtiss, do.print = FALSE)
subtiss <- ProjectPCA(object = subtiss, do.print = FALSE)
# If this fails for your subset, it may be that cells.use is more cells than you have left! Try reducing it.
PCHeatmap(object = subtiss, pc.use = 1:3, cells.use = 250, do.balanced = TRUE, label.columns = FALSE, num.genes = 12)
Later on (in FindClusters and TSNE) you will pick a number of principal components to use. This has the effect of keeping the major directions of variation in the data and, ideally, supressing noise. There is no correct answer to the number to use, but a decent rule of thumb is to go until the plot plateaus.
PCElbowPlot(object = subtiss)
Choose the number of principal components to use.
# Set number of principal components.
sub.n.pcs = 5
The clustering is performed based on a nearest neighbors graph. Cells that have similar expression will be joined together. The Louvain algorithm looks for groups of cells with high modularity–more connections within the group than between groups. The resolution parameter determines the scale…higher resolution will give more clusters, lower resolution will give fewer.
# Set resolution
sub.res.used <- 1
subtiss <- FindClusters(object = subtiss, reduction.type = "pca", dims.use = 1:sub.n.pcs,
resolution = sub.res.used, print.output = 0, save.SNN = TRUE)
To visualize
# If cells are too spread out, you can raise the perplexity. If you have few cells, try a lower perplexity (but never less than 10).
subtiss <- RunTSNE(object = subtiss, dims.use = 1:sub.n.pcs, seed.use = 10, perplexity=25)
# note that you can set do.label=T to help label individual clusters
TSNEPlot(object = subtiss, do.label = T)
subtiss.markers <- FindAllMarkers(object = subtiss, only.pos = TRUE, min.pct = 0.25, thresh.use = 0.25)
| | 0 % ~calculating
|+ | 1 % ~02s
|++ | 2 % ~03s
|++ | 3 % ~03s
|+++ | 4 % ~02s
|+++ | 6 % ~02s
|++++ | 7 % ~02s
|++++ | 8 % ~02s
|+++++ | 9 % ~02s
|++++++ | 10% ~02s
|++++++ | 11% ~02s
|+++++++ | 12% ~02s
|+++++++ | 13% ~02s
|++++++++ | 15% ~02s
|++++++++ | 16% ~02s
|+++++++++ | 17% ~02s
|+++++++++ | 18% ~02s
|++++++++++ | 19% ~02s
|+++++++++++ | 20% ~02s
|+++++++++++ | 21% ~02s
|++++++++++++ | 22% ~02s
|++++++++++++ | 24% ~02s
|+++++++++++++ | 25% ~02s
|+++++++++++++ | 26% ~02s
|++++++++++++++ | 27% ~02s
|+++++++++++++++ | 28% ~02s
|+++++++++++++++ | 29% ~02s
|++++++++++++++++ | 30% ~02s
|++++++++++++++++ | 31% ~02s
|+++++++++++++++++ | 33% ~02s
|+++++++++++++++++ | 34% ~02s
|++++++++++++++++++ | 35% ~02s
|++++++++++++++++++ | 36% ~02s
|+++++++++++++++++++ | 37% ~01s
|++++++++++++++++++++ | 38% ~01s
|++++++++++++++++++++ | 39% ~01s
|+++++++++++++++++++++ | 40% ~01s
|+++++++++++++++++++++ | 42% ~01s
|++++++++++++++++++++++ | 43% ~01s
|++++++++++++++++++++++ | 44% ~01s
|+++++++++++++++++++++++ | 45% ~01s
|++++++++++++++++++++++++ | 46% ~01s
|++++++++++++++++++++++++ | 47% ~01s
|+++++++++++++++++++++++++ | 48% ~01s
|+++++++++++++++++++++++++ | 49% ~01s
|++++++++++++++++++++++++++ | 51% ~01s
|++++++++++++++++++++++++++ | 52% ~01s
|+++++++++++++++++++++++++++ | 53% ~01s
|+++++++++++++++++++++++++++ | 54% ~01s
|++++++++++++++++++++++++++++ | 55% ~01s
|+++++++++++++++++++++++++++++ | 56% ~01s
|+++++++++++++++++++++++++++++ | 57% ~01s
|++++++++++++++++++++++++++++++ | 58% ~01s
|++++++++++++++++++++++++++++++ | 60% ~01s
|+++++++++++++++++++++++++++++++ | 61% ~01s
|+++++++++++++++++++++++++++++++ | 62% ~01s
|++++++++++++++++++++++++++++++++ | 63% ~01s
|+++++++++++++++++++++++++++++++++ | 64% ~01s
|+++++++++++++++++++++++++++++++++ | 65% ~01s
|++++++++++++++++++++++++++++++++++ | 66% ~01s
|++++++++++++++++++++++++++++++++++ | 67% ~01s
|+++++++++++++++++++++++++++++++++++ | 69% ~01s
|+++++++++++++++++++++++++++++++++++ | 70% ~01s
|++++++++++++++++++++++++++++++++++++ | 71% ~01s
|++++++++++++++++++++++++++++++++++++ | 72% ~01s
|+++++++++++++++++++++++++++++++++++++ | 73% ~01s
|++++++++++++++++++++++++++++++++++++++ | 74% ~01s
|++++++++++++++++++++++++++++++++++++++ | 75% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02s
| | 0 % ~calculating
|+ | 1 % ~03s
|++ | 2 % ~03s
|++ | 3 % ~03s
|+++ | 4 % ~03s
|+++ | 5 % ~03s
|++++ | 6 % ~03s
|++++ | 7 % ~03s
|+++++ | 9 % ~03s
|+++++ | 10% ~03s
|++++++ | 11% ~03s
|++++++ | 12% ~03s
|+++++++ | 13% ~03s
|+++++++ | 14% ~03s
|++++++++ | 15% ~03s
|++++++++ | 16% ~03s
|+++++++++ | 17% ~03s
|++++++++++ | 18% ~03s
|++++++++++ | 19% ~03s
|+++++++++++ | 20% ~03s
|+++++++++++ | 21% ~03s
|++++++++++++ | 22% ~03s
|++++++++++++ | 23% ~03s
|+++++++++++++ | 24% ~03s
|+++++++++++++ | 26% ~03s
|++++++++++++++ | 27% ~03s
|++++++++++++++ | 28% ~03s
|+++++++++++++++ | 29% ~03s
|+++++++++++++++ | 30% ~03s
|++++++++++++++++ | 31% ~03s
|++++++++++++++++ | 32% ~03s
|+++++++++++++++++ | 33% ~03s
|++++++++++++++++++ | 34% ~02s
|++++++++++++++++++ | 35% ~02s
|+++++++++++++++++++ | 36% ~02s
|+++++++++++++++++++ | 37% ~02s
|++++++++++++++++++++ | 38% ~02s
|++++++++++++++++++++ | 39% ~02s
|+++++++++++++++++++++ | 40% ~02s
|+++++++++++++++++++++ | 41% ~02s
|++++++++++++++++++++++ | 43% ~02s
|++++++++++++++++++++++ | 44% ~02s
|+++++++++++++++++++++++ | 45% ~02s
|+++++++++++++++++++++++ | 46% ~02s
|++++++++++++++++++++++++ | 47% ~02s
|++++++++++++++++++++++++ | 48% ~02s
|+++++++++++++++++++++++++ | 49% ~02s
|+++++++++++++++++++++++++ | 50% ~02s
|++++++++++++++++++++++++++ | 51% ~02s
|+++++++++++++++++++++++++++ | 52% ~02s
|+++++++++++++++++++++++++++ | 53% ~02s
|++++++++++++++++++++++++++++ | 54% ~02s
|++++++++++++++++++++++++++++ | 55% ~02s
|+++++++++++++++++++++++++++++ | 56% ~02s
|+++++++++++++++++++++++++++++ | 57% ~02s
|++++++++++++++++++++++++++++++ | 59% ~01s
|++++++++++++++++++++++++++++++ | 60% ~01s
|+++++++++++++++++++++++++++++++ | 61% ~01s
|+++++++++++++++++++++++++++++++ | 62% ~01s
|++++++++++++++++++++++++++++++++ | 63% ~01s
|++++++++++++++++++++++++++++++++ | 64% ~01s
|+++++++++++++++++++++++++++++++++ | 65% ~01s
|+++++++++++++++++++++++++++++++++ | 66% ~01s
|++++++++++++++++++++++++++++++++++ | 67% ~01s
|+++++++++++++++++++++++++++++++++++ | 68% ~01s
|+++++++++++++++++++++++++++++++++++ | 69% ~01s
|++++++++++++++++++++++++++++++++++++ | 70% ~01s
|++++++++++++++++++++++++++++++++++++ | 71% ~01s
|+++++++++++++++++++++++++++++++++++++ | 72% ~01s
|+++++++++++++++++++++++++++++++++++++ | 73% ~01s
|++++++++++++++++++++++++++++++++++++++ | 74% ~01s
|++++++++++++++++++++++++++++++++++++++ | 76% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~01s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~01s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~01s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 90% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 03s
| | 0 % ~calculating
|+ | 1 % ~02s
|++ | 2 % ~02s
|++ | 3 % ~02s
|+++ | 4 % ~02s
|+++ | 5 % ~02s
|++++ | 6 % ~02s
|++++ | 7 % ~02s
|+++++ | 8 % ~02s
|+++++ | 9 % ~02s
|++++++ | 10% ~02s
|++++++ | 11% ~02s
|+++++++ | 12% ~02s
|+++++++ | 13% ~02s
|++++++++ | 14% ~02s
|++++++++ | 15% ~02s
|+++++++++ | 16% ~02s
|+++++++++ | 17% ~02s
|++++++++++ | 18% ~02s
|++++++++++ | 19% ~02s
|+++++++++++ | 20% ~02s
|+++++++++++ | 21% ~02s
|++++++++++++ | 22% ~02s
|++++++++++++ | 23% ~02s
|+++++++++++++ | 24% ~02s
|+++++++++++++ | 25% ~02s
|++++++++++++++ | 26% ~02s
|++++++++++++++ | 27% ~02s
|+++++++++++++++ | 28% ~02s
|+++++++++++++++ | 29% ~02s
|++++++++++++++++ | 30% ~02s
|++++++++++++++++ | 31% ~02s
|+++++++++++++++++ | 32% ~02s
|+++++++++++++++++ | 33% ~02s
|++++++++++++++++++ | 34% ~02s
|++++++++++++++++++ | 35% ~02s
|+++++++++++++++++++ | 36% ~01s
|+++++++++++++++++++ | 37% ~01s
|++++++++++++++++++++ | 38% ~01s
|++++++++++++++++++++ | 39% ~01s
|+++++++++++++++++++++ | 40% ~01s
|+++++++++++++++++++++ | 41% ~01s
|++++++++++++++++++++++ | 42% ~01s
|++++++++++++++++++++++ | 43% ~01s
|+++++++++++++++++++++++ | 44% ~01s
|+++++++++++++++++++++++ | 45% ~01s
|++++++++++++++++++++++++ | 46% ~01s
|++++++++++++++++++++++++ | 47% ~01s
|+++++++++++++++++++++++++ | 48% ~01s
|+++++++++++++++++++++++++ | 49% ~01s
|++++++++++++++++++++++++++ | 51% ~01s
|++++++++++++++++++++++++++ | 52% ~01s
|+++++++++++++++++++++++++++ | 53% ~01s
|+++++++++++++++++++++++++++ | 54% ~01s
|++++++++++++++++++++++++++++ | 55% ~01s
|++++++++++++++++++++++++++++ | 56% ~01s
|+++++++++++++++++++++++++++++ | 57% ~01s
|+++++++++++++++++++++++++++++ | 58% ~01s
|++++++++++++++++++++++++++++++ | 59% ~01s
|++++++++++++++++++++++++++++++ | 60% ~01s
|+++++++++++++++++++++++++++++++ | 61% ~01s
|+++++++++++++++++++++++++++++++ | 62% ~01s
|++++++++++++++++++++++++++++++++ | 63% ~01s
|++++++++++++++++++++++++++++++++ | 64% ~01s
|+++++++++++++++++++++++++++++++++ | 65% ~01s
|+++++++++++++++++++++++++++++++++ | 66% ~01s
|++++++++++++++++++++++++++++++++++ | 67% ~01s
|++++++++++++++++++++++++++++++++++ | 68% ~01s
|+++++++++++++++++++++++++++++++++++ | 69% ~01s
|+++++++++++++++++++++++++++++++++++ | 70% ~01s
|++++++++++++++++++++++++++++++++++++ | 71% ~01s
|++++++++++++++++++++++++++++++++++++ | 72% ~01s
|+++++++++++++++++++++++++++++++++++++ | 73% ~01s
|+++++++++++++++++++++++++++++++++++++ | 74% ~01s
|++++++++++++++++++++++++++++++++++++++ | 75% ~01s
|++++++++++++++++++++++++++++++++++++++ | 76% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~00s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~00s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~00s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~00s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~00s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 02s
| | 0 % ~calculating
|+ | 1 % ~05s
|++ | 2 % ~05s
|++ | 3 % ~05s
|+++ | 4 % ~05s
|+++ | 5 % ~05s
|++++ | 6 % ~05s
|++++ | 7 % ~05s
|+++++ | 8 % ~05s
|+++++ | 9 % ~05s
|++++++ | 10% ~04s
|++++++ | 11% ~04s
|+++++++ | 12% ~04s
|+++++++ | 13% ~04s
|++++++++ | 14% ~04s
|++++++++ | 15% ~04s
|+++++++++ | 16% ~04s
|+++++++++ | 18% ~04s
|++++++++++ | 19% ~04s
|++++++++++ | 20% ~04s
|+++++++++++ | 21% ~04s
|+++++++++++ | 22% ~04s
|++++++++++++ | 23% ~04s
|++++++++++++ | 24% ~04s
|+++++++++++++ | 25% ~04s
|+++++++++++++ | 26% ~04s
|++++++++++++++ | 27% ~04s
|++++++++++++++ | 28% ~04s
|+++++++++++++++ | 29% ~04s
|+++++++++++++++ | 30% ~04s
|++++++++++++++++ | 31% ~04s
|++++++++++++++++ | 32% ~03s
|+++++++++++++++++ | 33% ~03s
|++++++++++++++++++ | 34% ~03s
|++++++++++++++++++ | 35% ~03s
|+++++++++++++++++++ | 36% ~03s
|+++++++++++++++++++ | 37% ~03s
|++++++++++++++++++++ | 38% ~03s
|++++++++++++++++++++ | 39% ~03s
|+++++++++++++++++++++ | 40% ~03s
|+++++++++++++++++++++ | 41% ~03s
|++++++++++++++++++++++ | 42% ~03s
|++++++++++++++++++++++ | 43% ~03s
|+++++++++++++++++++++++ | 44% ~03s
|+++++++++++++++++++++++ | 45% ~03s
|++++++++++++++++++++++++ | 46% ~03s
|++++++++++++++++++++++++ | 47% ~03s
|+++++++++++++++++++++++++ | 48% ~03s
|+++++++++++++++++++++++++ | 49% ~03s
|++++++++++++++++++++++++++ | 51% ~03s
|++++++++++++++++++++++++++ | 52% ~02s
|+++++++++++++++++++++++++++ | 53% ~02s
|+++++++++++++++++++++++++++ | 54% ~02s
|++++++++++++++++++++++++++++ | 55% ~02s
|++++++++++++++++++++++++++++ | 56% ~02s
|+++++++++++++++++++++++++++++ | 57% ~02s
|+++++++++++++++++++++++++++++ | 58% ~02s
|++++++++++++++++++++++++++++++ | 59% ~02s
|++++++++++++++++++++++++++++++ | 60% ~02s
|+++++++++++++++++++++++++++++++ | 61% ~02s
|+++++++++++++++++++++++++++++++ | 62% ~02s
|++++++++++++++++++++++++++++++++ | 63% ~02s
|++++++++++++++++++++++++++++++++ | 64% ~02s
|+++++++++++++++++++++++++++++++++ | 65% ~02s
|+++++++++++++++++++++++++++++++++ | 66% ~02s
|++++++++++++++++++++++++++++++++++ | 67% ~02s
|+++++++++++++++++++++++++++++++++++ | 68% ~02s
|+++++++++++++++++++++++++++++++++++ | 69% ~02s
|++++++++++++++++++++++++++++++++++++ | 70% ~02s
|++++++++++++++++++++++++++++++++++++ | 71% ~01s
|+++++++++++++++++++++++++++++++++++++ | 72% ~01s
|+++++++++++++++++++++++++++++++++++++ | 73% ~01s
|++++++++++++++++++++++++++++++++++++++ | 74% ~01s
|++++++++++++++++++++++++++++++++++++++ | 75% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~01s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~01s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~01s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~01s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed = 05s
subtiss.markers %>% group_by(cluster) %>% top_n(6, avg_diff)
Check expression of genes of interset.
genes_to_check = c('Kcnj8','Postn','Myh11','Cnn1')
FeaturePlot(subtiss, genes_to_check, pt.size = 1)
Dotplots let you see the intensity of exppression and the fraction of cells expressing for each of your genes of interest.
# To change the y-axis to show raw counts, add use.raw = T.
DotPlot(subtiss, genes_to_check, plot.legend = T)
How big are the clusters?
table(subtiss@ident)
0 1 2 3
74 52 52 42
Color by metadata, like plate barcode, to check for batch effects.
TSNEPlot(object = subtiss, do.return = TRUE, group.by = "plate.barcode")
Print a table showing the count of cells in each identity category from each plate.
table(as.character(subtiss@ident), as.character(subtiss@meta.data$plate.barcode))
B000412 B000633 B000634 B000636 B002010 B002011 B002421 B002423 B002427 B002428
0 2 1 3 2 1 0 4 6 3 3
1 2 7 0 0 0 0 0 1 1 0
2 1 0 0 0 0 0 2 1 1 0
3 2 2 1 0 4 2 3 1 4 3
B002429 MAA000398 MAA000399 MAA000400 MAA000452 MAA000586 MAA000587 MAA000589
0 3 4 10 5 9 1 6 1
1 0 2 0 1 0 6 0 1
2 4 9 1 5 4 1 4 4
3 0 2 2 0 1 0 2 5
MAA000898 MAA000899 MAA000901 MAA000903 MAA000917 MAA000918 MAA000919 MAA000920
0 0 0 3 0 1 1 1 4
1 0 1 0 12 0 1 0 1
2 0 0 3 0 1 4 4 3
3 1 0 0 2 1 2 1 0
MAA000936 MAA100037
0 0 0
1 16 0
2 0 0
3 0 1
For the subsets, we produce subcell_ontology_classs. These will be written back as metadata in the original object, so we can see all subcell_ontology_classs together.
If some of the clusters you find in the subset deserve additional cell_ontology_class, you can add that right here. Use NA for clusters for which no subcell_ontology_class is needed.
subcluster.ids <- c(0, 1, 2, 3)
subfree_annotation <- c()
subcell_ontology_class <-c("Myofibroblast","Myofibroblast","Myofibroblast","Smooth_Muscle_Cells")
subtiss@meta.data[,'subcell_ontology_class'] <- plyr::mapvalues(x = subtiss@ident, from = subcluster.ids, to = subcell_ontology_class)
tiss@meta.data[subtiss@cell.names,'subcell_ontology_class'] <- as.character(subtiss@meta.data$subcell_ontology_class)
TSNEPlot(object = subtiss, do.label = TRUE, pt.size = 0.5, group.by='subcell_ontology_class')
When you save the annotated tissue, please give it a name.
filename = here('00_data_ingest', '04_tissue_robj_generated',
paste0("facs", tissue_of_interest, "_seurat_tiss.Robj"))
print(filename)
[1] "/Users/guangli/Documents/GitHub/tabula-muris/00_data_ingest/04_tissue_robj_generated/facsHeart_seurat_tiss.Robj"
save(tiss, file=filename)
So that Biohub can easily combine all your cell_ontology_classs, please export them as a simple csv.
head(tiss@meta.data)
filename = here('00_data_ingest', '03_tissue_cell_ontology_class_csv',
paste0(tissue_of_interest, "_cell_ontology_class.csv"))
write.csv(tiss@meta.data[,c('plate.barcode','cell_ontology_class','cell_ontology_id')], file=filename)
cannot open file '/Users/guangli/Documents/GitHub/tabula-muris/00_data_ingest/03_tissue_cell_ontology_class_csv/Heart_cell_ontology_class.csv': No such file or directoryError in file(file, ifelse(append, "a", "w")) :
cannot open the connection